身份验证
将应用连接到 Zapier 的第一步是身份验证。用户选择他们希望在 Zap 中使用的应用,然后对该应用进行账户身份验证,以允许 Zapier 访问他们的数据。
Zapier 将访问该账户,直到授权过期、被撤销或凭证被更改。Zapier 会自动刷新启用了刷新令牌功能的 OAuth v2 和会话身份验证。
一旦用户将应用账户身份验证到 Zapier,他们就可以在自己的 Zap 中使用该应用的任何触发器或操作,而无需再次进行身份验证。如果用户希望使用该应用中的其他账户(例如,他们在同一个应用中有一个工作账户和一个个人账户),他们需要对另一个连接进行身份验证。
Zapier 集成构建者定义了 Zapier 如何连接到您的应用以进行用户身份验证,包括添加一个 API 调用来测试账户身份验证。
所有能够访问或添加用户私有数据的 Zapier 集成都需要身份验证。唯一不需要身份验证的应用包括数据源(如新闻或天气更新)或实用工具(如文件格式转换工具或公共搜索引擎)。如果您正在为任何存储私有数据且需要账户来使用的应用构建集成,那么您的集成将需要身份验证。
Zapier 支持的身份验证方案
Zapier 在 Platform UI 中支持以下五种身份验证方案,每种方案都有自己的设置:
在可能的情况下,OAuth v2 身份验证是首选方案,因为它可以简化用户的账户连接并最小化设置时间。在通过 Zapier 进行的身份验证流程中,会出现一个熟悉的弹出窗口,从您的应用中选择他们的账户或登录,然后验证连接。这符合大多数现代应用用于集成身份验证的流程。
API 密钥身份验证是次优选择。用户必须能够从您的应用中无须人工干预地获取他们的 API 密钥。如果您的服务要求用户通过电子邮件或电话联系您的团队来获取 API 密钥或访问 API,那么您的集成将无法获得发布批准。
基本身份验证虽然可以接受,但它是用于像 Zapier 这样的第三方服务的最不合适的身份验证类型,因为用户必须直接在 Zapier 的 UI 中输入他们的账户凭证。
对于更多自定义的身份验证方案,请切换到Platform CLI。
如何移除或更改身份验证方案类型
您无法直接更改集成的身份验证方案。首先,移除现有集成的身份验证方案,然后添加一个新的身份验证方案。
注意:您只能在(新)集成版本尚未推广且活跃用户少于 5 个的情况下执行此操作,因为这会中断已连接的账户。如果需要更改集成的身份验证方案,请克隆一个新的主要版本并添加新的身份验证。了解更多
要在 Platform UI 中移除 Zapier 集成的身份验证方案,请打开身份验证页面。点击现有身份验证方案旁边的齿轮图标,点击删除,然后确认移除身份验证。
然后,向 Zapier 集成中添加您应用的新的身份验证方案。
注意:再次强调,为了不中断已连接的账户,您通常无法将现有用户的 Zap 和已连接账户迁移到一个具有不同身份验证方案的新版本。对于满足某些条件的公共集成,我们可以提供支持来在身份验证方案之间迁移已连接账户。了解更多
常见身份验证错误消息
当用于验证用户凭证的测试 API 调用失败时,错误消息会在 Zapier 集成的测试部分中显示。Zapier 默认在响应选项卡中显示简化的错误消息。
原始 API 响应(包含完整的错误消息)会在 HTTP 选项卡下的响应内容中显示。
最常见的错误包括:
404
标准的 HTTP 404 Not Found
错误通常在以下情况返回:
-
测试 API 端点 URL 不正确
-
测试 API 调用方法不正确
验证 API 端点 URL 和调用方法(通常为 GET
)。确保两者都设置为您的 API 所期望的,然后点击保存并继续按钮,再次点击测试已连接账户按钮。
401 或 403
标准的 HTTP 401 Unauthorized
或 HTTP 403 Forbidden
错误通常在以下情况返回:
- 用户账户凭证不正确、已过期或已被撤销
请尝试再次对您的应用用户账户进行 Zapier 身份验证。点击连接账户,添加应用中活跃账户的凭证,然后再次尝试测试。
400
标准的 HTTP 400 Bad Request
错误通常在以下情况返回:
-
OAuth v2 客户端 ID 和/或密钥不正确或已过期
-
请求的某些其他部分格式错误,特别是令牌交换请求
检查错误中的完整错误消息或 Zapier 的测试日志,以查看调用失败的原因,然后更正身份验证流程中的相应部分。验证身份验证流程的每个部分是否正确输入,包括请求头、URL 参数和请求体。
Error Parsing Response
Error Parsing Response 错误通常在以下情况返回:
-
API 返回非标准输出,尤其是非 JSON 格式
-
测试 API 端点 URL 不正确
验证测试 API URL 是否输入正确。如果在测试字段中输入了一个普通网页 URL,该站点将向 Zapier 返回其原始 HTML 内容,这可能会导致此错误。如果您确实更改了 URL,请点击保存并继续,然后再次测试您的连接。
如果您的 API 调用正确且返回的数据格式Zapie 不期望,您需要切换到代码模式 并为您的 API 响应添加自定义解析。在您的应用身份验证设置中的测试 API 调用顶部,点击切换到代码模式,然后添加自定义 JavaScript 代码来解析您的 API 响应。
Authentication Failed Task Timed Out
Authentication Failed 错误(通常包括 Task Timed Out)通常在以下情况返回:
-
API 请求未在 30 秒内向 Zapier 返回响应
-
API 请求格式错误,服务器未用错误代码响应
检查您的 Zapier 测试日志,以查看哪个 URL 超时了,然后验证您在集成身份验证设置中是否输入了正确的 URL。最后,检查 API 提供者以查看他们的站点或 API 是否临时宕机。
如果请求似乎成功但任务仍超时,您的 API 调用可能响应时间过长,或者返回的数据量超过了 Zapier 的解析时间限制。请在身份验证中使用一个返回数据尽可能少的测试 API 调用,例如一个 /me
调用来返回连接用户账户数据。或者,如果您的 API 支持分页和/或过滤,请启用这些功能,让 API 只返回最近的结果。然后再次测试以确保调用成功。
500
HTTP 500 错误是默认的、未格式化的错误,可能在未指定问题或原因的情况下返回。如果您遇到此错误,请检查引发错误的 API 端点 URL,并验证您的 API 调用是否正确配置,包括预期的 URL 参数、HTTP 头和请求体。